// pages/pay/pay.js
const app = getApp()
const db = wx.cloud.database()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    hasNum: null,
    p_number: 0,
    p_number_list: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    console.log('全局存的桌号', app.globalData.zhuohao)
    let list = wx.getStorageSync('cart') || []
    console.log('本地缓存的list', list)
    this.setData({
      list, //list:list
      hasNum: app.globalData.zhuohao,
    })
    this.getTotal()
  },
  //计算总价格和总数量
  getTotal() {
    let cartList = this.data.list
    let totalMoney = 0
    let totalNum = 0

    cartList.forEach(item => {
      totalMoney += item.num * item.price
      totalNum += item.num
    })
    this.setData({
      totalNum,
      totalMoney,
    })
  },

  // 扫码识别桌号
  SaoMa() {
    console.log('点击识别')
    // let that = this
    // wx.scanCode({
    //   success(res) {
    //     console.log(res.result)
    //     that.setData({
    //       hasNum: res.result
    //     })
    //   }
    // })
    wx.scanCode({
      success: res => {
        console.log(res.result)
        app.globalData.zhuohao = res.result
        this.setData({
          hasNum: res.result
        })
      }
    })
  },

  //选中就餐人数
  chooseY(e) {
    console.log(e.currentTarget.dataset.item)
    this.setData({
      p_number: e.currentTarget.dataset.item,
    })
  },

  //获取用户输入的备注信息
  getRemark(e) {
    //console.log('备注', e.detail.value)
    this.setData({
      remark: e.detail.value
    })
  },

  // 提交订单
  submit() {
    if (!this.data.hasNum) {
      wx.showToast({
        icon: 'error',
        title: '请识别桌号',
      })
    } else if (!this.data.p_number) {
      wx.showToast({
        icon: 'error',
        title: '选择就餐人数',
      })
    } else {
      console.log('执行了提交订单')
      let user = wx.getStorageSync('user')
      console.log('用户信息', user)
      // 校验用户是否登录
      if (!user) {
        wx.showToast({
          icon: 'error',
          title: '去我的页面登录',
        })
        setTimeout(() => {
          wx.switchTab({
            url: '/pages/me/me',
          })
        }, 1000);
        return
      }

      // 提交订单，也就是上传数据到数据库
      db.collection('orders')
        .add({
          data: {
            username: user.nickName, //用户的昵称
            Status: 0, //订单状态  -1订单取消，0新下单待上餐，1待用户评价，2订单已完成
            address: this.data.hasNum, //桌号
            remark: this.data.remark, //备注
            p_number: this.data.p_number, //就餐人数
            orderList: this.data.list, //用户购买菜品
            totalPrice: this.data.totalMoney, //订单总价格
            time: app.getCurrentTime(), //下单时间
            month: app._getMonth(),
          }
        }).then(res => {
          // 增加销量
          let foods = []
          this.data.list.forEach(item => {
            let food = {}
            food._id = item._id
            food.num = item.num
            foods.push(food)
          })
          console.log(foods)
          // 调用云函数添加销量
          wx.cloud.callFunction({
            name: 'addSell',
            data: {
              foods: foods,
            }
          }).then(res => {
            console.log('云函数的返回', res)
          })
          console.log('提交订单成功', res)

          //提交后，清空购物车
          wx.setStorageSync('cart', null)
          wx.switchTab({
            url: '/pages/me/me',
          })
        }).catch(res => {
          console.log('提交订单失败', res)
        })
    }
  },


  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})